package com.hhit.zhgd.service

import com.baomidou.mybatisplus.core.metadata.IPage
import com.baomidou.mybatisplus.extension.service.IService
import com.hhit.zhgd.domain.dto.BackStageMaterialsSupplyPlanDTO
import com.hhit.zhgd.domain.entity.ZhgdMaterialsSupplyPlan
import com.hhit.zhgd.domain.response.BaseResp
import jakarta.servlet.http.HttpServletResponse
import org.springframework.web.multipart.MultipartFile
import java.io.IOException

interface ZhgdMaterialsSupplyPlanService:IService<ZhgdMaterialsSupplyPlan> {

    @Throws(Exception::class)
    fun importMaterialsSupplyPlan(multipartFile: MultipartFile?): BaseResp<Any?>?

    fun confirmHandOverMaterials(id: Int?): BaseResp<Any?>?

    fun addMaterialPlan(backStageMaterialsSupplyPlanDTO: BackStageMaterialsSupplyPlanDTO?): BaseResp<Any?>?

    fun editMaterialPlan(backStageMaterialsSupplyPlanDTO: BackStageMaterialsSupplyPlanDTO?): BaseResp<Any?>?

    fun delMaterialPlan(ids: List<Int?>?): BaseResp<Any?>?

    fun getMaterialPlanPageInfo(keyWord: String?, page: Int, size: Int): IPage<BackStageMaterialsSupplyPlanDTO>?

    @Throws(IOException::class)
    fun exportMaterialPlan(response: HttpServletResponse?)
}